home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / debian_DSA-030.nasl < prev    next >
Text File  |  2005-03-31  |  12KB  |  219 lines

  1. # This script was automatically generated from the dsa-030
  2. # Debian Security Advisory
  3. # It is released under the Nessus Script Licence.
  4. # Advisory is copyright 1997-2004 Software in the Public Interest, Inc.
  5. # See http://www.debian.org/license
  6. # DSA2nasl Convertor is copyright 2004 Michel Arboi
  7.  
  8. if (! defined_func('bn_random')) exit(0);
  9.  
  10. desc = 'Chris Evans, Joseph S. Myers, Michal Zalewski, Alan Cox,
  11. and others have noted a number of problems in several components of the X
  12. Window System sample implementation (from which XFree86 is derived). While
  13. there are no known reports of real-world malicious exploits of any of these
  14. problems, it is nevertheless suggested that you upgrade your XFree86 packages
  15. immediately.
  16.  
  17.  
  18. The scope of this advisory is XFree86 3.3.6 only, since that is the version
  19. released with Debian GNU/Linux 2.2 ("potato"); Debian packages of XFree86 4.0
  20. and later have not been released as part of a Debian distribution.
  21.  
  22.  
  23. Several people are responsible for authoring the fixes to these problems,
  24. including Aaron Campbell, Paulo Cesar Pereira de Andrade, Keith Packard, David
  25. Dawes, Matthieu Herrb, Trevor Johnson, Colin Phipps, and Branden Robinson.
  26.  
  27.  
  28. The X servers are vulnerable to a denial-of-service attack during
  29. XC-SECURITY protocol negotiation.
  30. X clients based on Xlib (which is most of them) are subject to potential
  31. buffer overflows in the _XReply() and _XAsyncReply() functions if they connect
  32. to a maliciously-coded X server that places bogus data in its X protocol
  33. replies. NOTE: This is only an effective attack against X clients running
  34. with elevated privileges (setuid or setgid programs), and offers potential
  35. access only to the elevated privilege. For instance, the most common setuid X
  36. client is probably xterm. On many Unix systems, xterm is setuid root; in Debian
  37. 2.2, xterm is only setgid utmp, which means that an effective exploit is
  38. limited to corruption of the lastlog, utmp, and wtmp files --
  39. not general
  40. root access. Also note that the attacker must already have sufficient
  41. privileges to start such an X client and successfully connect to the X server.
  42. There is a buffer overflow (not stack-based) in xdm\'s XDMCP code.
  43. There is a one-byte overflow in Xtrans.c.
  44. Xtranssock.c is also subject to buffer overflow problems.
  45. There is a buffer overflow with the -xkbmap X server flag.
  46. The MultiSrc widget in the Athena widget library handle temporary files
  47. insecurely.
  48. The imake program handles temporary files insecurely when executing install
  49. rules.
  50. The ICE library is subject to buffer overflow attacks.
  51. The xauth program handles temporary files insecurely.
  52. The XauLock() function in the Xau library handles temporary files
  53. insecurely.
  54. The gccmakedep and makedepend programs handle temporary files insecurely.
  55.  
  56. All of the above issues are resolved by this security release.
  57.  
  58. There are several other XFree86 security issues commonly discussed in conjunction with the above, to which an up-to-date Debian 2.2 system is
  59. NOT vulnerable:
  60.  
  61.  
  62. There are 4 distinct problems with Xlib\'s XOpenDisplay() function in which
  63. a maliciously coded X server could cause a denial-of-service attack or buffer
  64. overflow. As before, this is only an effective attack against X clients running
  65. with elevated privileges, and the attacker must already have sufficient
  66. privileges to start such an X client and successfully connect to the X server.
  67. Debian 2.2 and 2.2r1 are only vulnerable to one of these problems, because we
  68. ap
  69. [...]
  70.  
  71. Solution : http://www.debian.org/security/2001/dsa-030
  72. Risk factor : High';
  73.  
  74. if (description) {
  75.  script_id(14867);
  76.  script_version("$Revision: 1.5 $");
  77.  script_xref(name: "DSA", value: "030");
  78.  script_bugtraq_id(1430, 2924, 2925);
  79.  
  80.  script_description(english: desc);
  81.  script_copyright(english: "This script is (C) 2004 Michel Arboi");
  82.  script_name(english: "[DSA030] DSA-030-2 xfree86");
  83.  script_category(ACT_GATHER_INFO);
  84.  script_family(english: "Debian Local Security Checks");
  85.  script_dependencies("ssh_get_info.nasl");
  86.  script_require_keys("Host/Debian/dpkg-l");
  87.  script_summary(english: "DSA-030-2 xfree86");
  88.  exit(0);
  89. }
  90.  
  91. include("debian_package.inc");
  92.  
  93. w = 0;
  94. if (deb_check(prefix: 'rstart', release: '2.2', reference: '3.3.6-11potato32')) {
  95.  w ++;
  96.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package rstart is vulnerable in Debian 2.2.\nUpgrade to rstart_3.3.6-11potato32\n');
  97. }
  98. if (deb_check(prefix: 'rstartd', release: '2.2', reference: '3.3.6-11potato32')) {
  99.  w ++;
  100.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package rstartd is vulnerable in Debian 2.2.\nUpgrade to rstartd_3.3.6-11potato32\n');
  101. }
  102. if (deb_check(prefix: 'twm', release: '2.2', reference: '3.3.6-11potato32')) {
  103.  w ++;
  104.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package twm is vulnerable in Debian 2.2.\nUpgrade to twm_3.3.6-11potato32\n');
  105. }
  106. if (deb_check(prefix: 'xbase', release: '2.2', reference: '3.3.6-11potato32')) {
  107.  w ++;
  108.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xbase is vulnerable in Debian 2.2.\nUpgrade to xbase_3.3.6-11potato32\n');
  109. }
  110. if (deb_check(prefix: 'xbase-clients', release: '2.2', reference: '3.3.6-11potato32')) {
  111.  w ++;
  112.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xbase-clients is vulnerable in Debian 2.2.\nUpgrade to xbase-clients_3.3.6-11potato32\n');
  113. }
  114. if (deb_check(prefix: 'xdm', release: '2.2', reference: '3.3.6-11potato32')) {
  115.  w ++;
  116.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xdm is vulnerable in Debian 2.2.\nUpgrade to xdm_3.3.6-11potato32\n');
  117. }
  118. if (deb_check(prefix: 'xext', release: '2.2', reference: '3.3.6-11potato32')) {
  119.  w ++;
  120.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xext is vulnerable in Debian 2.2.\nUpgrade to xext_3.3.6-11potato32\n');
  121. }
  122. if (deb_check(prefix: 'xf86setup', release: '2.2', reference: '3.3.6-11potato32')) {
  123.  w ++;
  124.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xf86setup is vulnerable in Debian 2.2.\nUpgrade to xf86setup_3.3.6-11potato32\n');
  125. }
  126. if (deb_check(prefix: 'xfree86-common', release: '2.2', reference: '3.3.6-11potato32')) {
  127.  w ++;
  128.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xfree86-common is vulnerable in Debian 2.2.\nUpgrade to xfree86-common_3.3.6-11potato32\n');
  129. }
  130. if (deb_check(prefix: 'xlib6g', release: '2.2', reference: '3.3.6-11potato32')) {
  131.  w ++;
  132.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xlib6g is vulnerable in Debian 2.2.\nUpgrade to xlib6g_3.3.6-11potato32\n');
  133. }
  134. if (deb_check(prefix: 'xlib6g-dev', release: '2.2', reference: '3.3.6-11potato32')) {
  135.  w ++;
  136.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xlib6g-dev is vulnerable in Debian 2.2.\nUpgrade to xlib6g-dev_3.3.6-11potato32\n');
  137. }
  138. if (deb_check(prefix: 'xlib6g-static', release: '2.2', reference: '3.3.6-11potato32')) {
  139.  w ++;
  140.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xlib6g-static is vulnerable in Debian 2.2.\nUpgrade to xlib6g-static_3.3.6-11potato32\n');
  141. }
  142. if (deb_check(prefix: 'xmh', release: '2.2', reference: '3.3.6-11potato32')) {
  143.  w ++;
  144.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xmh is vulnerable in Debian 2.2.\nUpgrade to xmh_3.3.6-11potato32\n');
  145. }
  146. if (deb_check(prefix: 'xnest', release: '2.2', reference: '3.3.6-11potato32')) {
  147.  w ++;
  148.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xnest is vulnerable in Debian 2.2.\nUpgrade to xnest_3.3.6-11potato32\n');
  149. }
  150. if (deb_check(prefix: 'xproxy', release: '2.2', reference: '3.3.6-11potato32')) {
  151.  w ++;
  152.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xproxy is vulnerable in Debian 2.2.\nUpgrade to xproxy_3.3.6-11potato32\n');
  153. }
  154. if (deb_check(prefix: 'xprt', release: '2.2', reference: '3.3.6-11potato32')) {
  155.  w ++;
  156.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xprt is vulnerable in Debian 2.2.\nUpgrade to xprt_3.3.6-11potato32\n');
  157. }
  158. if (deb_check(prefix: 'xserver-3dlabs', release: '2.2', reference: '3.3.6-11potato32')) {
  159.  w ++;
  160.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xserver-3dlabs is vulnerable in Debian 2.2.\nUpgrade to xserver-3dlabs_3.3.6-11potato32\n');
  161. }
  162. if (deb_check(prefix: 'xserver-common', release: '2.2', reference: '3.3.6-11potato32')) {
  163.  w ++;
  164.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xserver-common is vulnerable in Debian 2.2.\nUpgrade to xserver-common_3.3.6-11potato32\n');
  165. }
  166. if (deb_check(prefix: 'xserver-fbdev', release: '2.2', reference: '3.3.6-11potato32')) {
  167.  w ++;
  168.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xserver-fbdev is vulnerable in Debian 2.2.\nUpgrade to xserver-fbdev_3.3.6-11potato32\n');
  169. }
  170. if (deb_check(prefix: 'xserver-i128', release: '2.2', reference: '3.3.6-11potato32')) {
  171.  w ++;
  172.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xserver-i128 is vulnerable in Debian 2.2.\nUpgrade to xserver-i128_3.3.6-11potato32\n');
  173. }
  174. if (deb_check(prefix: 'xserver-mach64', release: '2.2', reference: '3.3.6-11potato32')) {
  175.  w ++;
  176.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xserver-mach64 is vulnerable in Debian 2.2.\nUpgrade to xserver-mach64_3.3.6-11potato32\n');
  177. }
  178. if (deb_check(prefix: 'xserver-mono', release: '2.2', reference: '3.3.6-11potato32')) {
  179.  w ++;
  180.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xserver-mono is vulnerable in Debian 2.2.\nUpgrade to xserver-mono_3.3.6-11potato32\n');
  181. }
  182. if (deb_check(prefix: 'xserver-p9000', release: '2.2', reference: '3.3.6-11potato32')) {
  183.  w ++;
  184.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xserver-p9000 is vulnerable in Debian 2.2.\nUpgrade to xserver-p9000_3.3.6-11potato32\n');
  185. }
  186. if (deb_check(prefix: 'xserver-s3', release: '2.2', reference: '3.3.6-11potato32')) {
  187.  w ++;
  188.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xserver-s3 is vulnerable in Debian 2.2.\nUpgrade to xserver-s3_3.3.6-11potato32\n');
  189. }
  190. if (deb_check(prefix: 'xserver-s3v', release: '2.2', reference: '3.3.6-11potato32')) {
  191.  w ++;
  192.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xserver-s3v is vulnerable in Debian 2.2.\nUpgrade to xserver-s3v_3.3.6-11potato32\n');
  193. }
  194. if (deb_check(prefix: 'xserver-svga', release: '2.2', reference: '3.3.6-11potato32')) {
  195.  w ++;
  196.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xserver-svga is vulnerable in Debian 2.2.\nUpgrade to xserver-svga_3.3.6-11potato32\n');
  197. }
  198. if (deb_check(prefix: 'xserver-tga', release: '2.2', reference: '3.3.6-11potato32')) {
  199.  w ++;
  200.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xserver-tga is vulnerable in Debian 2.2.\nUpgrade to xserver-tga_3.3.6-11potato32\n');
  201. }
  202. if (deb_check(prefix: 'xserver-vga16', release: '2.2', reference: '3.3.6-11potato32')) {
  203.  w ++;
  204.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xserver-vga16 is vulnerable in Debian 2.2.\nUpgrade to xserver-vga16_3.3.6-11potato32\n');
  205. }
  206. if (deb_check(prefix: 'xsm', release: '2.2', reference: '3.3.6-11potato32')) {
  207.  w ++;
  208.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xsm is vulnerable in Debian 2.2.\nUpgrade to xsm_3.3.6-11potato32\n');
  209. }
  210. if (deb_check(prefix: 'xterm', release: '2.2', reference: '3.3.6-11potato32')) {
  211.  w ++;
  212.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xterm is vulnerable in Debian 2.2.\nUpgrade to xterm_3.3.6-11potato32\n');
  213. }
  214. if (deb_check(prefix: 'xvfb', release: '2.2', reference: '3.3.6-11potato32')) {
  215.  w ++;
  216.  if (report_verbosity > 0) desc = strcat(desc, '\nThe package xvfb is vulnerable in Debian 2.2.\nUpgrade to xvfb_3.3.6-11potato32\n');
  217. }
  218. if (w) { security_hole(port: 0, data: desc); }
  219.